use serde::Deserialize;

/// 服务配置
///
/// # 属性
/// - `host` - 服务监听地址
/// - `port` - 服务监听端口
#[derive(Debug, Deserialize)]
pub struct ServerConfig {
    host: Option<String>,
    port: Option<u16>,
}

impl ServerConfig {
    pub fn host(&self) -> &str {
        self.host.as_deref().unwrap_or("127.0.0.1")
    }

    pub fn port(&self) -> u16 {
        self.port.unwrap_or(3000)
    }
}